﻿using System;

namespace XcoAppSpaces.Contracts.Logging
{
	/// <summary>
	/// Empty Logger class that just does nothing.
	/// </summary>
	public class EmptyLogger : IXcoLogger
	{
		/// <summary>
		/// Logs a debug message.
		/// </summary>
		/// <param name="msg">The message to be logged.</param>
		public void Debug(string msg) { }
		/// <summary>
		/// Logs an Info message.
		/// </summary>
		/// <param name="msg">The message to be logged.</param>
		public void Info(string msg) { }
		/// <summary>
		/// Logs a warning message.
		/// </summary>
		/// <param name="msg">The message to be logged.</param>
		public void Warn(string msg) { }
		/// <summary>
		/// Logs an error message.
		/// </summary>
		/// <param name="msg">The message to be logged.</param>
		public void Error(string msg) { }
		/// <summary>
		/// Logs an error message.
		/// </summary>
		/// <param name="msg">The message to be logged.</param>
		/// <param name="ex">The exception that was thrown.</param>
		public void Error(string msg, Exception ex) { }
		/// <summary>
		/// Logs a fatal error message.
		/// </summary>
		/// <param name="msg">The message to be logged.</param>
		public void Fatal(string msg) { }
		/// <summary>
		/// Logs a fatal error message.
		/// </summary>
		/// <param name="msg">The message to be logged.</param>
		/// <param name="ex">The exception that was thrown.</param>
		public void Fatal(string msg, Exception ex) { }
	}
}